[2024年1月10日号]個人的に気になったModern Data Stack情報まとめ
さがらです。
Modern Data Stack関連のコンサルタントをしている私ですが、Modern Data Stack界隈は日々多くの情報が発信されております。
そんな多くの情報が発信されている中、この3週間ほどの間で私が気になったModern Data Stack関連の情報を本記事でまとめてみます。
※注意事項:記述している製品のすべての最新情報を網羅しているわけではありません。私の独断と偏見で気になった情報のみ記載しております。
Data Extract/Load
Fivetran
UI上で複数のコネクタに対しまとめて一時停止・再開・手動Sync・コネクタ削除ができるようになりました
細かい新機能ではあるのですが、FivetranのUI上で複数のコネクタに対しまとめて一時停止・再開・手動Sync・コネクタ削除ができるようになりました。
複数のコネクタに対してまとめて操作をおこないたいときに特に便利な機能だと思います!詳細は下記のブログもご覧ください。
Airbyte
Airbyteの2023年のまとめと2024年の展望について
Airbyteが自社のブログで、2023年のまとめと2024年の展望についての記事を出していました。
この記事によると、Airbyteの立ち上げから数えて、合計で127,000件以上のデプロイされた実績、GitHubでの12,000個のスターの獲得、17,000人を超えるSlackコミュニティのメンバー数、などの実績があるようです。
2024年は、Airbyteはコネクタ数を増やすことはもちろん、ELTP (extract, load, transform, publish) やData lakehousesの領域にも注力していくようなので、アップデートが楽しみですね!
Data Warehouse/Data Lakehouse
Snowflake
Snowpark Container Servicesがパブリックプレビュー
2023年12月20日に、コンテナアプリケーションをSnowflake上でデプロイ・実行できるSnowpark Container Servicesがパブリックプレビューとなりました!
早速日本語でもいくつか記事が出ております。
海外でも、Snowpark Container ServicesからSnowflakeにつなげる方法、Hugging Faceを用いたAutoTrainの方法、OSSのLLMをホストしStreamlitから問い合わせできるチャットボットの構築、Compute poolにGPUを用いた場合、などの記事が出ています。
Snowflakeのデータロード時のオプション一覧と選定基準
SELECT社のブログより、Snowflakeのデータロード時のオプション一覧とその選定基準について書かれた記事が出ていました。
いくつか引用すると、以下のようなことが記事には書かれていました。
- 最小のXSのウェアハウスは8つのファイルを並行してロードできる。ファイル数はウェアハウスのサイズが1つ大きくなるごとに2倍になる
- データロードが60秒未満の場合はサーバーレスタスクのほうがお得だが、60秒を超えるとサーバーレスタスクは通常のウェアハウスの1.5倍のコストとなってしまう
- Snowpipe Streamingを使用する際は、クライアントの数を意識する事が重要(むやみにクライアントの数を増やすとその分コストがかかる)
また、記事の一番下にはどのオプションを使うのかをまとめたフローチャートもあり、参考になります。
Snowflakeで10億行のデータをどのようにロードするか
Snowflakeを用いて、10億行のデータを持つCSVファイルをどのようにロードするか、様々なパターンで検証された記事が出ていました。
特に、ファイルを分割することでのロード時間にかなり大きな差があったのが印象的でした。
BigQuery
BigQueryとDocument AIの統合機能を発表
PDFなどのドキュメントデータから自動でテキストデータを抽出して、BigQueryからSQLを用いてドキュメントのデータに対して問い合わせをできる機能を発表しました。
BigQueryでの例外処理に適した各種クエリ構文のまとめ
BigQueryでの例外処理に適した各種クエリ構文のまとめ記事が出ていました。
これは私が知らなかっただけなのですが、SAFE.SUBSTR()
などのようにSAFE.
をprefixとしてつけると、SUBSTR()
など一部の関数はエラーがあっても処理を停止せずNULLを返すなど、勉強になりました。
MotherDuck/DuckDB
Federated Queryの観点で見たDuckDBについて
MotherDuck社の公式ブログで、DuckDBを複数のデータソースが絡むFederated Queryのレイヤーとして用いる際のメリットや注意点をまとめた記事が出ていました。
当たり前かもしれませんが、DuckDBを用いる場合でも「1TBを超えるデータの結合」や「100ミリ秒未満などのレイテンシを求める」場合には向いていないようですね。
MotherDuck上で動くAIベースのSQL修正機能「FixIt」を発表
MotherDuck上で動くAIベースのSQL修正機能「FixIt」が発表されました。
下記のブログにわかりやすいGifもありますので、こちらもぜひご覧ください。
Data Transform
dbt
dbt-converterがLookMLで書かれたコードをdbt Semantic Layerのコードに変換する機能を追加
dbt-converterは元々、以前のdbt Semantic Layer(dbt metrics)から現在のdbt Semantic Layer(MetricFlow)へのコード変換をサポートするツールでしたが、2023年12月のアップデートでLookMLのコードを現在のdbt Semantic Layer(MetricFlow)のコードに変換する機能が追加されました。
すべてのLookMLのコードには対応していないようなので注意は必要ですが、LookMLからの移行を検討される場合には一度試してみても良いかもしれません。
Data Catalog
Atlan
AtlanからSnowflakeのタグを設定する機能を発表
Atlanの新機能として、AtlanからSnowflakeのタグを設定できる機能が発表されました。
Secoda
Secoda Automationsの発表
Secodaがデータカタログの各種管理タスクを自動化する機能として「Secoda Automations」が発表されました。
以下はブログから引用した一例ですが、このようなことができるようです。
- 過去90日間更新されていない、または表示されていないアセットに自動タグ付け
- スキーマの変更が発生した場合、そのテーブルに「recently changed」のタグが付けられる
- カラム名やDescriptionに書かれたキーワードから、自動的に特定のタグを適用
- よく使用されるアセットに対する自動タグ付け
Data Orchestration
Orchestra
ノーコードのData Orchestrationサービス「Orchestra」
私が偶然見つけただけではあるのですが、ノーコードのData Orchestrationのサービスとして「Orchestra」というサービスを見つけました。
Dagster、Prefect、Airflowはいずれも良くも悪くもPythonでDAGを管理するのですが、このOrchestraはノーコードベースでDAGの設定と管理ができそうです。
Fivetran、dbt Cloud、Hightouch、Censusとも対応しているようで、Modern Data Stackとの相性も良さそうです。
ただ、まだまだ新興のツールのため、今後も継続して情報をウォッチしていきます。